<!DOCTYPE html>
<html lang="en-US">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width,initial-scale=1" />
    <title>04.与敏捷相关.md | aiyoudiao</title>
    <meta name="generator" content="VuePress 1.9.10" />
    <link rel="icon" href="/img/blog.ico">
    <script src="https://cdn.jsdelivr.net/npm/live2d-widget@3.1.4/lib/L2Dwidget.min.js"></script> <meta name="description" content="码二~">
    <meta name="keywords" content="前端博客,个人技术博客,前端,前端开发,前端框架,web前端,前端面试题,技术文档,学习,面试,JavaScript,js,ES6,TypeScript,vue,python,css3,html5,Node,git,github,gitee,markdown">
    <meta name="theme-color" content="#11a8cd">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> <link rel="preload" href="/assets/css/0.styles.146197cf.css" as="style"><link rel="preload" href="/assets/js/app.bd2fbc77.js" as="script"><link rel="preload" href="/assets/js/3.72c9c947.js" as="script"><link rel="preload" href="/assets/js/92.e2ebb8f5.js" as="script"><link rel="preload" href="/assets/js/42.4251ca36.js" as="script"><link rel="prefetch" href="/assets/js/1.4ed4671d.js"><link rel="prefetch" href="/assets/js/10.bd6ddb58.js"><link rel="prefetch" href="/assets/js/100.20d2348f.js"><link rel="prefetch" href="/assets/js/101.ba7b784c.js"><link rel="prefetch" href="/assets/js/102.c3e2dcae.js"><link rel="prefetch" href="/assets/js/103.0f4c50f3.js"><link rel="prefetch" href="/assets/js/104.ef47a111.js"><link rel="prefetch" href="/assets/js/105.2e00f516.js"><link rel="prefetch" href="/assets/js/106.b50e19b9.js"><link rel="prefetch" href="/assets/js/107.e125a8f6.js"><link rel="prefetch" href="/assets/js/108.770493ab.js"><link rel="prefetch" href="/assets/js/109.74766d7b.js"><link rel="prefetch" href="/assets/js/11.f786a5ee.js"><link rel="prefetch" href="/assets/js/110.0b0ee5b4.js"><link rel="prefetch" href="/assets/js/111.835b0e44.js"><link rel="prefetch" href="/assets/js/112.352fa217.js"><link rel="prefetch" href="/assets/js/113.4e908557.js"><link rel="prefetch" href="/assets/js/114.7b77996d.js"><link rel="prefetch" href="/assets/js/115.bdc61268.js"><link rel="prefetch" href="/assets/js/116.d5da9b8b.js"><link rel="prefetch" href="/assets/js/117.35ab1f9f.js"><link rel="prefetch" href="/assets/js/118.517c151d.js"><link rel="prefetch" href="/assets/js/119.f7f49ba8.js"><link rel="prefetch" href="/assets/js/12.3c729a65.js"><link rel="prefetch" href="/assets/js/120.b559598b.js"><link rel="prefetch" href="/assets/js/121.bf8a2f43.js"><link rel="prefetch" href="/assets/js/122.11a0bc97.js"><link rel="prefetch" href="/assets/js/123.2bafdde7.js"><link rel="prefetch" href="/assets/js/124.dc393688.js"><link rel="prefetch" href="/assets/js/125.ed3f389a.js"><link rel="prefetch" href="/assets/js/126.8fd9a57d.js"><link rel="prefetch" href="/assets/js/127.3bf2a1f2.js"><link rel="prefetch" href="/assets/js/128.b9c671d3.js"><link rel="prefetch" href="/assets/js/129.5d331f0d.js"><link rel="prefetch" href="/assets/js/13.7b1a1fe5.js"><link rel="prefetch" href="/assets/js/130.53e4f9c6.js"><link rel="prefetch" href="/assets/js/131.dcc47e1d.js"><link rel="prefetch" href="/assets/js/132.692dcdcd.js"><link rel="prefetch" href="/assets/js/133.e293202c.js"><link rel="prefetch" href="/assets/js/134.593dccf2.js"><link rel="prefetch" href="/assets/js/135.d76d384b.js"><link rel="prefetch" href="/assets/js/136.a519c23c.js"><link rel="prefetch" href="/assets/js/137.b1821288.js"><link rel="prefetch" href="/assets/js/138.5bcea4ef.js"><link rel="prefetch" href="/assets/js/139.076664b0.js"><link rel="prefetch" href="/assets/js/14.35f257b2.js"><link rel="prefetch" href="/assets/js/140.a019e655.js"><link rel="prefetch" href="/assets/js/141.1f70e1c7.js"><link rel="prefetch" href="/assets/js/142.5ed728fd.js"><link rel="prefetch" href="/assets/js/143.1c8cdc78.js"><link rel="prefetch" href="/assets/js/144.b0cb125b.js"><link rel="prefetch" href="/assets/js/145.c0209a76.js"><link rel="prefetch" href="/assets/js/146.551469f4.js"><link rel="prefetch" href="/assets/js/147.1dfd721d.js"><link rel="prefetch" href="/assets/js/148.91d07ef5.js"><link rel="prefetch" href="/assets/js/149.5b88b710.js"><link rel="prefetch" href="/assets/js/15.23bbc29a.js"><link rel="prefetch" href="/assets/js/150.8301107f.js"><link rel="prefetch" href="/assets/js/151.867da089.js"><link rel="prefetch" href="/assets/js/152.935d5046.js"><link rel="prefetch" href="/assets/js/153.f39d8435.js"><link rel="prefetch" href="/assets/js/154.6b9eb2c3.js"><link rel="prefetch" href="/assets/js/155.14283ad4.js"><link rel="prefetch" href="/assets/js/156.2d7c1a2a.js"><link rel="prefetch" href="/assets/js/157.2f28d02f.js"><link rel="prefetch" href="/assets/js/158.151221ae.js"><link rel="prefetch" href="/assets/js/159.ef6d7ffe.js"><link rel="prefetch" href="/assets/js/16.1793aef7.js"><link rel="prefetch" href="/assets/js/160.de54c4ea.js"><link rel="prefetch" href="/assets/js/161.24d4e57c.js"><link rel="prefetch" href="/assets/js/162.632032fe.js"><link rel="prefetch" href="/assets/js/163.fd01cd99.js"><link rel="prefetch" href="/assets/js/164.45f203f5.js"><link rel="prefetch" href="/assets/js/165.aafe4fe1.js"><link rel="prefetch" href="/assets/js/166.1dd1d21c.js"><link rel="prefetch" href="/assets/js/167.5501b3a1.js"><link rel="prefetch" href="/assets/js/168.fbe58b1f.js"><link rel="prefetch" href="/assets/js/169.2cae7f5e.js"><link rel="prefetch" href="/assets/js/17.bbfe63f2.js"><link rel="prefetch" href="/assets/js/170.265f7c9e.js"><link rel="prefetch" href="/assets/js/171.b61f327d.js"><link rel="prefetch" href="/assets/js/172.5d0043fd.js"><link rel="prefetch" href="/assets/js/173.45284bb6.js"><link rel="prefetch" href="/assets/js/174.9130e0c4.js"><link rel="prefetch" href="/assets/js/175.2b38bddd.js"><link rel="prefetch" href="/assets/js/176.9772cf09.js"><link rel="prefetch" href="/assets/js/177.69048ebc.js"><link rel="prefetch" href="/assets/js/178.e10d7ce5.js"><link rel="prefetch" href="/assets/js/179.3789edc0.js"><link rel="prefetch" href="/assets/js/18.0807ded0.js"><link rel="prefetch" href="/assets/js/180.ab675e47.js"><link rel="prefetch" href="/assets/js/181.2e39eff0.js"><link rel="prefetch" href="/assets/js/19.becf5a76.js"><link rel="prefetch" href="/assets/js/2.eb089a4f.js"><link rel="prefetch" href="/assets/js/20.cea59652.js"><link rel="prefetch" href="/assets/js/21.58c43ff1.js"><link rel="prefetch" href="/assets/js/22.f73b825d.js"><link rel="prefetch" href="/assets/js/23.43b13730.js"><link rel="prefetch" href="/assets/js/24.f77f93ca.js"><link rel="prefetch" href="/assets/js/25.7dfaf3fb.js"><link rel="prefetch" href="/assets/js/26.629d28e5.js"><link rel="prefetch" href="/assets/js/27.4fff23ea.js"><link rel="prefetch" href="/assets/js/28.1b8ae389.js"><link rel="prefetch" href="/assets/js/29.d5cce9a0.js"><link rel="prefetch" href="/assets/js/30.961d5519.js"><link rel="prefetch" href="/assets/js/31.121dd1af.js"><link rel="prefetch" href="/assets/js/32.4a3c5df7.js"><link rel="prefetch" href="/assets/js/33.5537f44b.js"><link rel="prefetch" href="/assets/js/34.1d4d4653.js"><link rel="prefetch" href="/assets/js/35.d094209b.js"><link rel="prefetch" href="/assets/js/36.832660c5.js"><link rel="prefetch" href="/assets/js/37.145c3665.js"><link rel="prefetch" href="/assets/js/38.4f369bfe.js"><link rel="prefetch" href="/assets/js/39.ba060044.js"><link rel="prefetch" href="/assets/js/4.66d742f6.js"><link rel="prefetch" href="/assets/js/40.e50e0379.js"><link rel="prefetch" href="/assets/js/41.4ed7617c.js"><link rel="prefetch" href="/assets/js/43.d22b74c4.js"><link rel="prefetch" href="/assets/js/44.59439f9d.js"><link rel="prefetch" href="/assets/js/45.da28bc46.js"><link rel="prefetch" href="/assets/js/46.b8db1176.js"><link rel="prefetch" href="/assets/js/47.7ed16fc7.js"><link rel="prefetch" href="/assets/js/48.c982d5ed.js"><link rel="prefetch" href="/assets/js/49.a7579f55.js"><link rel="prefetch" href="/assets/js/5.08802d7d.js"><link rel="prefetch" href="/assets/js/50.103b5bf6.js"><link rel="prefetch" href="/assets/js/51.0fe9d79a.js"><link rel="prefetch" href="/assets/js/52.9ba31e26.js"><link rel="prefetch" href="/assets/js/53.0e8bc1f0.js"><link rel="prefetch" href="/assets/js/54.9566e517.js"><link rel="prefetch" href="/assets/js/55.a124abae.js"><link rel="prefetch" href="/assets/js/56.d9cf0800.js"><link rel="prefetch" href="/assets/js/57.93599da0.js"><link rel="prefetch" href="/assets/js/58.d943f85b.js"><link rel="prefetch" href="/assets/js/59.50a66488.js"><link rel="prefetch" href="/assets/js/6.a3ea60eb.js"><link rel="prefetch" href="/assets/js/60.21aa3aa3.js"><link rel="prefetch" href="/assets/js/61.6712c00f.js"><link rel="prefetch" href="/assets/js/62.eff3e4b1.js"><link rel="prefetch" href="/assets/js/63.09701d5a.js"><link rel="prefetch" href="/assets/js/64.eb440dec.js"><link rel="prefetch" href="/assets/js/65.aeed0579.js"><link rel="prefetch" href="/assets/js/66.97244c64.js"><link rel="prefetch" href="/assets/js/67.e01c5c24.js"><link rel="prefetch" href="/assets/js/68.21be91ba.js"><link rel="prefetch" href="/assets/js/69.c0849905.js"><link rel="prefetch" href="/assets/js/7.7fd40e91.js"><link rel="prefetch" href="/assets/js/70.b32bbe5d.js"><link rel="prefetch" href="/assets/js/71.0efbc0c7.js"><link rel="prefetch" href="/assets/js/72.ef963181.js"><link rel="prefetch" href="/assets/js/73.ca7dd5db.js"><link rel="prefetch" href="/assets/js/74.4483ede8.js"><link rel="prefetch" href="/assets/js/75.374ab483.js"><link rel="prefetch" href="/assets/js/76.b4a39f08.js"><link rel="prefetch" href="/assets/js/77.6b30c3cd.js"><link rel="prefetch" href="/assets/js/78.15376c33.js"><link rel="prefetch" href="/assets/js/79.3153fcec.js"><link rel="prefetch" href="/assets/js/80.9a88c684.js"><link rel="prefetch" href="/assets/js/81.1e3f842c.js"><link rel="prefetch" href="/assets/js/82.996dbd3d.js"><link rel="prefetch" href="/assets/js/83.955158bf.js"><link rel="prefetch" href="/assets/js/84.71bdc76d.js"><link rel="prefetch" href="/assets/js/85.774e49f2.js"><link rel="prefetch" href="/assets/js/86.bebf32e5.js"><link rel="prefetch" href="/assets/js/87.becdbde1.js"><link rel="prefetch" href="/assets/js/88.49e933f4.js"><link rel="prefetch" href="/assets/js/89.eeceedfd.js"><link rel="prefetch" href="/assets/js/90.3ea6dd12.js"><link rel="prefetch" href="/assets/js/91.62a6a556.js"><link rel="prefetch" href="/assets/js/93.dcdefe7a.js"><link rel="prefetch" href="/assets/js/94.bf412146.js"><link rel="prefetch" href="/assets/js/95.8deadcdc.js"><link rel="prefetch" href="/assets/js/96.9977087a.js"><link rel="prefetch" href="/assets/js/97.6591f9da.js"><link rel="prefetch" href="/assets/js/98.4db7f75e.js"><link rel="prefetch" href="/assets/js/99.a61462e9.js"><link rel="prefetch" href="/assets/js/vendors~docsearch.2852b102.js"> <link rel="stylesheet" href="/assets/css/0.styles.146197cf.css">
  </head>
  <body class="theme-mode-light">
    <div id="app" data-server-rendered="true"><div class="theme-container sidebar-open have-rightmenu"><header class="navbar blur"><div title="目录" class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" width="50" height="50" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="https://p3-passport.byteacctimg.com/img/user-avatar/794fdae4ff249d532da19a3c26d420ed~300x300.image" alt="aiyoudiao" class="logo"> <span class="site-name can-hide">
      aiyoudiao
    </span></a> <div class="links"><div class="sky-switch" data-v-3a03d589><label for="toggle" data-v-3a03d589><input id="toggle" type="checkbox" data-v-3a03d589><div data-v-3a03d589></div></label></div> <div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="笔记" class="dropdown-title"><!----> <span class="title" style="display:;">笔记</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/84633490449/" class="nav-link">
  JavaScript
</a></li><li class="dropdown-item"><!----> <a href="/pages/2331001041/" class="nav-link">
  Vue
</a></li><li class="dropdown-item"><!----> <a href="/pages/18114480448/" class="nav-link">
  React
</a></li><li class="dropdown-item"><!----> <a href="/pages/25236260426/" class="nav-link">
  低代码
</a></li><li class="dropdown-item"><!----> <a href="/pages/35345230523/" class="nav-link">
  线性系统
</a></li><li class="dropdown-item"><!----> <a href="/pages/08313561056/" class="nav-link">
  暂未分类
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="算法与设计" class="dropdown-title"><!----> <span class="title" style="display:;">算法与设计</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/70741550255/" class="nav-link">
  LeetCode
</a></li><li class="dropdown-item"><!----> <a href="/pages/17845450445/" class="nav-link">
  算法
</a></li><li class="dropdown-item"><!----> <a href="/pages/90132170217/" class="nav-link">
  数据结构
</a></li><li class="dropdown-item"><!----> <a href="/pages/50546120212/" class="nav-link">
  设计模式
</a></li><li class="dropdown-item"><!----> <a href="/pages/02344550255/" class="nav-link">
  Other
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="技能" class="dropdown-title"><!----> <span class="title" style="display:;">技能</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/82158160216/" class="nav-link">
  PMP
</a></li><li class="dropdown-item"><!----> <a href="/pages/41858590259/" class="nav-link">
  Office
</a></li><li class="dropdown-item"><!----> <a href="/pages/02359360236/" class="nav-link">
  面试
</a></li><li class="dropdown-item"><!----> <a href="/pages/73600130213/" class="nav-link">
  Bash
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="历程" class="dropdown-title"><!----> <span class="title" style="display:;">历程</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/83857320232/" class="nav-link">
  流年往事
</a></li><li class="dropdown-item"><!----> <a href="/pages/93419130213/" class="nav-link">
  经验片段
</a></li><li class="dropdown-item"><!----> <a href="/pages/99744220322/" class="nav-link">
  读书杂感
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="首页" class="dropdown-title"><!----> <span class="title" style="display:;">首页</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/archives/" class="nav-link">
  归档
</a></li><li class="dropdown-item"><!----> <a href="/categories/" class="nav-link">
  分类
</a></li><li class="dropdown-item"><!----> <a href="/tags/" class="nav-link">
  标签
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="其它" class="dropdown-title"><!----> <span class="title" style="display:;">其它</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/02657130213/" class="nav-link">
  简介
</a></li><li class="dropdown-item"><!----> <a href="/pages/5390102042/" class="nav-link">
  收藏
</a></li><li class="dropdown-item"><!----> <a href="/pages/32309510451/" class="nav-link">
  有趣
</a></li><li class="dropdown-item"><!----> <a href="/pages/23313210521/" class="nav-link">
  文档
</a></li></ul></div></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <div class="sidebar-hover-trigger"></div> <aside class="sidebar" style="display:none;"><div class="blogger"><img src="/img/mar.jpg"> <div class="blogger-info"><h3>码二</h3> <span>扫微信二维码，认识一下码二吧😉。</span></div></div> <nav class="nav-links"><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="笔记" class="dropdown-title"><!----> <span class="title" style="display:;">笔记</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/84633490449/" class="nav-link">
  JavaScript
</a></li><li class="dropdown-item"><!----> <a href="/pages/2331001041/" class="nav-link">
  Vue
</a></li><li class="dropdown-item"><!----> <a href="/pages/18114480448/" class="nav-link">
  React
</a></li><li class="dropdown-item"><!----> <a href="/pages/25236260426/" class="nav-link">
  低代码
</a></li><li class="dropdown-item"><!----> <a href="/pages/35345230523/" class="nav-link">
  线性系统
</a></li><li class="dropdown-item"><!----> <a href="/pages/08313561056/" class="nav-link">
  暂未分类
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="算法与设计" class="dropdown-title"><!----> <span class="title" style="display:;">算法与设计</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/70741550255/" class="nav-link">
  LeetCode
</a></li><li class="dropdown-item"><!----> <a href="/pages/17845450445/" class="nav-link">
  算法
</a></li><li class="dropdown-item"><!----> <a href="/pages/90132170217/" class="nav-link">
  数据结构
</a></li><li class="dropdown-item"><!----> <a href="/pages/50546120212/" class="nav-link">
  设计模式
</a></li><li class="dropdown-item"><!----> <a href="/pages/02344550255/" class="nav-link">
  Other
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="技能" class="dropdown-title"><!----> <span class="title" style="display:;">技能</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/82158160216/" class="nav-link">
  PMP
</a></li><li class="dropdown-item"><!----> <a href="/pages/41858590259/" class="nav-link">
  Office
</a></li><li class="dropdown-item"><!----> <a href="/pages/02359360236/" class="nav-link">
  面试
</a></li><li class="dropdown-item"><!----> <a href="/pages/73600130213/" class="nav-link">
  Bash
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="历程" class="dropdown-title"><!----> <span class="title" style="display:;">历程</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/83857320232/" class="nav-link">
  流年往事
</a></li><li class="dropdown-item"><!----> <a href="/pages/93419130213/" class="nav-link">
  经验片段
</a></li><li class="dropdown-item"><!----> <a href="/pages/99744220322/" class="nav-link">
  读书杂感
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="首页" class="dropdown-title"><!----> <span class="title" style="display:;">首页</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/archives/" class="nav-link">
  归档
</a></li><li class="dropdown-item"><!----> <a href="/categories/" class="nav-link">
  分类
</a></li><li class="dropdown-item"><!----> <a href="/tags/" class="nav-link">
  标签
</a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="其它" class="dropdown-title"><!----> <span class="title" style="display:;">其它</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/pages/02657130213/" class="nav-link">
  简介
</a></li><li class="dropdown-item"><!----> <a href="/pages/5390102042/" class="nav-link">
  收藏
</a></li><li class="dropdown-item"><!----> <a href="/pages/32309510451/" class="nav-link">
  有趣
</a></li><li class="dropdown-item"><!----> <a href="/pages/23313210521/" class="nav-link">
  文档
</a></li></ul></div></div> <!----></nav>  <ul class="sidebar-links"><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading open"><span>PMP</span> <span class="arrow down"></span></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/pages/82158160216/" class="sidebar-link">项目管理</a></li><li><section class="sidebar-group collapsable is-sub-group depth-1"><p class="sidebar-heading open"><span>第七版</span> <span class="arrow down"></span></p> <ul class="sidebar-links sidebar-group-items"><li><a href="/pages/67356260426/" class="sidebar-link">开篇</a></li><li><a href="/pages/68021390439/" class="sidebar-link">与人相关</a></li><li><a href="/pages/80721210421/" class="sidebar-link">与方法相关</a></li><li><a href="/pages/42433250425/" aria-current="page" class="active sidebar-link">与敏捷相关</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/pages/42433250425/#精益思想" class="sidebar-link">精益思想</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#五大原则" class="sidebar-link">五大原则</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/pages/42433250425/#看板" class="sidebar-link">看板</a></li></ul></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#框架" class="sidebar-link">框架</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/pages/42433250425/#scrum-3355" class="sidebar-link">Scrum 3355</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#极限编程-xp" class="sidebar-link">极限编程 XP</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#水晶方法-crystal" class="sidebar-link">水晶方法 Crystal</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#其它方法" class="sidebar-link">其它方法</a></li></ul></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#方法和技术" class="sidebar-link">方法和技术</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/pages/42433250425/#仆人式领导" class="sidebar-link">仆人式领导</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#其它" class="sidebar-link">其它</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#通才型专家" class="sidebar-link">通才型专家</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#敏捷宣言" class="sidebar-link">敏捷宣言</a></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#章程" class="sidebar-link">章程</a></li></ul></li><li class="sidebar-sub-header"><a href="/pages/42433250425/#总结" class="sidebar-link">总结</a></li></ul></li><li><a href="/pages/03941460546/" class="sidebar-link">与规划相关</a></li><li><a href="/pages/45821160516/" class="sidebar-link">与工作相关</a></li><li><a href="/pages/81431130513/" class="sidebar-link">与交付相关</a></li><li><a href="/pages/74707370537/" class="sidebar-link">与测量相关</a></li></ul></section></li></ul></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Office</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>面试</span> <span class="arrow right"></span></p> <!----></section></li><li><section class="sidebar-group collapsable depth-0"><p class="sidebar-heading"><span>Bash</span> <span class="arrow right"></span></p> <!----></section></li></ul> </aside> <div><main class="page"> <div class="theme-vdoing-wrapper bg-style-1"><div class="articleInfo-wrap" data-v-18fb2c02><div class="articleInfo" data-v-18fb2c02><ul class="breadcrumbs" data-v-18fb2c02><li data-v-18fb2c02><a href="/" title="首页" class="iconfont icon-home router-link-active" data-v-18fb2c02></a></li> <li data-v-18fb2c02><a href="/categories/?category=%E6%8A%80%E8%83%BD" title="分类" data-v-18fb2c02>
          技能
        </a></li> <li data-v-18fb2c02><a href="/categories/?category=PMP" title="分类" data-v-18fb2c02>
          PMP
        </a></li> <li data-v-18fb2c02><a href="/categories/?category=%E7%AC%AC%E4%B8%83%E7%89%88" title="分类" data-v-18fb2c02>第七版</a></li></ul> <div class="info" data-v-18fb2c02><div title="作者" class="author iconfont icon-touxiang" data-v-18fb2c02><a href="javascript:;" data-v-18fb2c02>aiyoudiao</a></div> <div title="创建时间" class="date iconfont icon-riqi" data-v-18fb2c02><a href="javascript:;" data-v-18fb2c02>2023-04-16</a></div> <!----></div></div></div> <!----> <div class="content-wrapper"><div class="right-menu-wrapper"><div class="right-menu-margin"><div class="right-menu-content"></div></div></div> <h1><!----> <span>
            04.与敏捷相关.md
          </span></h1> <div class="theme-vdoing-content content__default"><p>敏捷是 一系列 价值观、方法、手段、实践、技术、框架的归类的总称。</p> <blockquote><p>敏捷是一类具有相似价值观和原则的软件开发方法的统称</p></blockquote> <p>初次诞生于2001-02-11～13</p> <p>以人为本、目标导向、合作共赢、拥抱变化</p> <p>敏捷12原则</p> <h2 id="精益思想"><a href="#精益思想" class="header-anchor">#</a> 精益思想</h2> <p>50～80年代丰田的准时生产制度<br>
90年代的精益管理<br>
现代的精益思想：精益生产、设计、服务。</p> <h2 id="五大原则"><a href="#五大原则" class="header-anchor">#</a> 五大原则</h2> <p>价值：由客户决定，满足客户需求才有存在的意义。</p> <p>价值流：按照最终客户立场寻找整体最佳的活动。原材料到成品的价值赋予过程，就是做什么样的东西。</p> <p>流动：生产强调的是创造出来的价值能够流动起来。</p> <p>拉动：按用户需求拉动生产，而不是强推产品给客户去适应和使用。</p> <p>尽善尽美：用同等的价值创造过程为用户提供同等的价值。</p> <p>这是一种意识上的改革：流水线生产，细流而快、粗流而慢。木桶的短板效应。决定生产效率的不是最快的员工，而是最慢的员工。</p> <h3 id="看板"><a href="#看板" class="header-anchor">#</a> 看板</h3> <p>可视化卡片，明确工作事项、工作量、执行人、审查人。</p> <p>至少三列，要完成的工作、进行中的工作、已完成的工作。</p> <p><strong>看板适用于：</strong></p> <p>灵活性：排列优先级<br>
专注于持续交付<br>
提高工作效率和质量<br>
提高效率：方便检查每个任务<br>
团队成员专注力<br>
工作负载的可变性：有卡片就清楚的知道哪些当前可做。<br>
减少浪费：卡片提供了透明化。</p> <h2 id="框架"><a href="#框架" class="header-anchor">#</a> 框架</h2> <p>Scrum</p> <h3 id="scrum-3355"><a href="#scrum-3355" class="header-anchor">#</a> Scrum 3355</h3> <p>3种角色：PO、SM、开发团队</p> <p>3种工件：产品待办事项列表、迭代待办事项列表、产品增量与集成</p> <p>5种仪式：迭代、迭代计划、每日站会、评审会议、迭代回顾</p> <p>5种价值观：承诺、专注、开放、尊重、勇气</p> <p><strong>流程：</strong></p> <ol><li>客户、市场、高层等 提供创意、缺陷、功能等给PO，由PO创建产品待办事项列表。</li> <li>然后再迭代计划会议上通过讨论来创建 迭代待办事项列表，有了迭代任务列表后，开始2到6周的迭代任务，之后会每天开展站立会，在迭代过程中SM会将产品的功能细化。</li> <li>最后迭代结束的时候，向用户提供可工作的软件，同时根据该功能软件和迭代过程遇到的事情来开展评审会和反思会。</li></ol> <p><strong>Scrumban</strong></p> <p>敏捷看板，将工作，分为很多小的冲刺，通过看板的可视化来监督工作。</p> <h3 id="极限编程-xp"><a href="#极限编程-xp" class="header-anchor">#</a> 极限编程 XP</h3> <blockquote><p>特定最佳实践提炼到最纯粹和最简单的形式, 周期内持续运用该实践。
基于频繁交付周期的软件开发方法
5种价值观：沟通、简洁、反馈、勇气、尊重。
主要原则：人性化、经济、互惠互利、自相似、改进、多样性、反思、流程、机会、冗余、失败、质量、循序渐进、承担责任</p></blockquote> <p>组织：集中办公</p> <p>技术：结对编程、测试驱动编程、增量。</p> <p>规划：用户故事、周周期、季周期</p> <p>整合：快速构建、持续集成、测试优先。</p> <p>提倡 测试驱动开发、多次集成反复回归测试、多做代码评审以及结对编程。</p> <p>XP 1～2周 且非常严格，Scrum 2～4周 相对宽松的自主意识。</p> <p>敏捷前期可以XP，后面在Scrum。这样的按需融合很不错。</p> <p><strong>12个实践</strong></p> <p>完整团队：整个团队参与，墙壁会有图表显示进度。<br>
计划游戏：可持续的，循序渐进。每两周就评估一下下两周的候选任务成本，有客户来确认功能优先级。<br>
客户测试：客户通过脚本语言来自动验收。<br>
简单设计：良好的设计，少些冗余的代码。<br>
结对编程：两个程序员一台机器。<br>
测试驱动开发：先错再对，根据反馈来循环。<br>
改进设计：重构，代码干净，更有表达力。<br>
持续集成：保持系统的完整性，不断的集成。<br>
集体代码所有权：每个人都可以参与任何模块的开发。<br>
编码标准：所有人的代码看起来像是同一个人写的。<br>
系统隐喻：系统中的模块与其它模块外观一致，无论是代码层面还是UI层面。<br>
可持续的速度：不是非常拼命的工作，而是像马拉松一样的可持续性的工作。</p> <h3 id="水晶方法-crystal"><a href="#水晶方法-crystal" class="header-anchor">#</a> 水晶方法 Crystal</h3> <p>方法论家族：红、橙、黄、透明的不同家族。</p> <p>根据错误引发的后果来确定项目中的重要性：C D E L</p> <p><strong>原则：</strong></p> <p>频繁交付、反思改进、个人安全、渗透式沟通、焦点、与专家用户建立方便的联系、配有自动测试。</p> <p>和前两种框架一样，但水晶和XP很像，XP的纪律性很高，但水晶是尽可能用最少的纪律来让项目成功。</p> <h3 id="其它方法"><a href="#其它方法" class="header-anchor">#</a> 其它方法</h3> <p>FDD 功能驱动开发：6个角色，每个人可以担任一个或者多个。</p> <p>项目经理 首席架构师 开发经理<br>
首席编程人员 类负责人 领域专家</p> <p>目的是满足大型项目的特定需求。它有重视小型商业价值功能的能力，也就是小的功能用它就很便捷，几个人或者一个人就干完了。</p> <hr> <p>DSDM 动态系统开发方法：制约因素驱动交付。一开始就设置成本、质量、实践，利用范围优先级来满足这些制约因素的要求。动态的地方是 成本和功能是可以相互调整的。在有限的条件下调整，并做出可交付的功能。</p> <p>8个原则：专注于业务需求、准时加皮肤、写作、在质量上不妥协、增量式构建、迭代开发、持续明晰的沟通、演示控制。</p> <hr> <p>AgileUp 敏捷统一过程：加速周期、轻量。在交付之前能够纳入相关反馈。</p> <hr> <p>SoS：Scrum of Scrums，多敏捷团队。多团队会定期召开会议，目标是清楚团队协调工作中潜在的未来障碍，优化团队效率。</p> <p>适用于 大规律敏捷框架 SAFe、大规模敏捷开发 LeSS、企业 SCRUM、规范敏捷 DA。</p> <h2 id="方法和技术"><a href="#方法和技术" class="header-anchor">#</a> 方法和技术</h2> <h3 id="仆人式领导"><a href="#仆人式领导" class="header-anchor">#</a> 仆人式领导</h3> <p>为团队赋权，注重理解和关注成员的需要和发展，从而实现最高绩效。<br>
与团队定义 为什么，在项目层面进行优化。确立目标后，鼓励团队，要求他们在工作中做出贡献。注重结果而不是完美的去遵循敏捷过程，常常能交付且反思产品和过程。</p> <p>管理协调 转向 促进合作<br>
消除组织障碍，文档、过程。<br>
为他人贡献铺路<br>
教育相关方，使其了解为什么要敏捷以及如何敏捷。<br>
通过指导、鼓励和帮助 来为团队提供支持。<br>
通过技术项目管理活动 来帮助团队。<br>
庆祝团队的成功。<br>
与业务代表（PO）开展合作</p> <h3 id="其它"><a href="#其它" class="header-anchor">#</a> 其它</h3> <p>敏捷团队</p> <p>敏捷团队角色</p> <p>MVP最小可行产品</p> <p>消除任何非增值工作</p> <p>尊重人</p> <p>使用信息发射源来确保工作的透明化，比如直接发聊天记录的链接。</p> <p>文档够用即可，多提供有价值的产品，而不是详尽的文档。</p> <p>社会契约：团队章程和工作协议</p> <h3 id="通才型专家"><a href="#通才型专家" class="header-anchor">#</a> 通才型专家</h3> <p>I 型人才：领域内非常专业，领域外少有贡献。有深度无广度。<br>
T 型人才：能力强且专业会沟通。</p> <p>许多成功的敏捷团队都由通才型专家组成。</p> <h3 id="敏捷宣言"><a href="#敏捷宣言" class="header-anchor">#</a> 敏捷宣言</h3> <p>客户协作高于合同协商</p> <p>动态特性的合同签署技术：</p> <p>多层结构<br>
强调价值交付<br>
总价增量<br>
固定时间和材料<br>
累进的时间和材料<br>
提前取消方案<br>
动态范围方案<br>
团队扩充<br>
支持全方位供应商</p> <h3 id="章程"><a href="#章程" class="header-anchor">#</a> 章程</h3> <p>项目上和团队上的章程。</p> <p><strong>敏捷项目上：</strong></p> <p>项目愿景：为什么要做，谁受益，如何受益。<br>
发布标准：满足哪些条件才意味着项目完成。<br>
预期的工作流：怎样合作。</p> <p><strong>敏捷团队上：</strong></p> <p>团队价值观：可持续的开发速度和核心工作时间。<br>
工作协议：准备就绪、完成的如何定义，通过定义这些协议，团队成员才能一直的判断完整性。从而能够考虑时间周期和工作过程中的限制。<br>
基本规则：会议上发言的各种规定<br>
团队规范：会议时间等</p> <p>敏捷团队中形成的默契就是敏捷团队章程。<br>
目标创建一个敏捷的环境，在这个环境中，团队成员发挥他们最大的能力。</p> <p>回顾：用于团队学习、改进和调整其过程。哪些做的好，哪些需要改进，哪些需要研究。</p> <p>待办事项列表：根据发布的主要内容，先以故事形式来创建，后根据故事来创建足够下一个迭代完成的项目任务。PO会制作产品路线图，用于显示可交付成果的序列。</p> <p>每日站会：在站会中汇报并做出小的承诺，发现问题，并确保工作能够顺利进行下去。就是大致过一下任务，昨天做了啥，今天准备做啥，有遇到啥阻塞。而且任何人都可以主持站会。站会不要太久，一般15分钟即可，不忽视其他人。</p> <p>展示和评审：以用户故事的方式完成特定功能后，会定期展示工作产品。让PO来确定是否接受，有了展示和频繁发布，团队的学习速度会比那的快起来。</p> <p>敏捷回顾会议参与人：可以是 PO、SM、团队成员、客户、利益相关人、专家、领导层、任何感兴趣的人。</p> <p>规划基于迭代的敏捷：多次规划、注意意外情况、PO拆分故事使其变小、根据团队来考虑故事的大小。</p> <p>迭代会议：会议目的、参会者、时间、持续时间、会议准备、产物(迭代待办事项)。</p> <p>用户故事：角色、功能、价值。作为 某某，我想要 什么样的功能，以便于 能够带来什么样的价值。</p> <p>用户故事地图：由众多用户故事连起来的业务流程及时间线。</p> <p>层级：史诗 &gt; 主题 &gt; 用户故事 &gt; 任务。<br>
层次与时间的对应：大于一个版本，以月来算 &gt; 大于一个冲刺，以周来算 &gt; 一个冲刺，以天来算 &gt; 一个任务，以小时来算。</p> <p>故事优先级 MoSCoW</p> <p><strong>莫斯科法则</strong></p> <p>M：必须<br>
S：应该有<br>
C：可以有<br>
W：不会有</p> <p><strong>卡诺KANO模型</strong></p> <p>对用户需求进行分类和优先级排序<br>
分析用户需求对用户满意度的影响<br>
该模型反应产品各个属性和用户满意度之间的非线性关系。</p> <p>估算 故事点 Story Point：测量单元。<br>
取决于复杂性、投入量、风险大小。<br>
相对估算：通过比较来估算。<br>
【@NOTE】 扑克估算：斐波那契额数列，有点玄学。</p> <hr> <p>燃尽图：剩余的故事点的二维坐标趋势图，下降趋势。<br>
燃起图：已完成的故事点的二维坐标趋势图，上升趋势。</p> <p>燃尽图如果不是下降趋势，那么说明需求梳理的不是很清楚。</p> <p>先确定真正可用的研发时间，再请团队根据这个时间来倒推范围。<br>
可以使用燃尽图来跟进并发现风险。发现较大偏差，即使分析根本原因。比如通过 TAPD（腾讯敏捷协作平台）的“历史记录” 或者 Lark 飞书文档上任务表格的 历史记录 发现协作问题。形成解决问题的行动项，并且跟进行动项执行。</p> <p>突发事件的应对：如有风险，先告知所有干系人，比如发风险报告。评估影响，并应对。</p> <p><strong>Mike Cohn的 Risk-value矩阵</strong></p> <p>先处理高价值和高风险的，低价值高风险的事情不建议做。</p> <p>非得失败，应该在早期失败，而不是花费更多的资源后再失败。</p> <h2 id="总结"><a href="#总结" class="header-anchor">#</a> 总结</h2> <p>因地制宜，多丰富自己的知识库。对于高风险项目，识别主要挑战，针对性管理。时间紧迫的项目，用简单、轻量、团队好理解的框架和流程，降低实践导入过程和管理过程中的成本。</p></div></div> <div class="page-edit"><!----> <div class="tags"><a href="/tags/?tag=%E9%A1%B9%E7%9B%AE%E7%AE%A1%E7%90%86" title="标签">#项目管理</a></div> <div class="last-updated"><span class="prefix">上次更新时间:</span> <span class="time">10年18月2023日 01时57分53秒</span></div></div> <div class="page-nav-wapper"><div class="page-nav-centre-wrap"><a href="/pages/80721210421/" class="page-nav-centre page-nav-centre-prev"><div class="tooltip">与方法相关</div></a> <a href="/pages/03941460546/" class="page-nav-centre page-nav-centre-next"><div class="tooltip">与规划相关</div></a></div> <div class="page-nav"><p class="inner"><span class="prev">
        ←
        <a href="/pages/80721210421/" class="prev">与方法相关</a></span> <span class="next"><a href="/pages/03941460546/"> 与规划相关 </a>
        →
      </span></p></div></div></div> <div class="article-list"><div class="article-title"><a href="/archives/" class="iconfont icon-bi">最近更新</a></div> <div class="article-wrapper"><dl><dd>01</dd> <dt><a href="/pages/45343271027/"><div>01.数据结构导论一览.md</div></a> <span>10-16</span></dt></dl><dl><dd>02</dd> <dt><a href="/pages/38850370637/"><div>30.2023年06月04日.md</div></a> <span>06-04</span></dt></dl><dl><dd>03</dd> <dt><a href="/pages/74707370537/"><div>08.与测量相关.md</div></a> <span>05-06</span></dt></dl> <dl><dd></dd> <dt><a href="/archives/" class="more">更多文章&gt;</a></dt></dl></div></div> </main></div> <div class="footer"><!----> 
  Theme by
  <a href="https://github.com/xugaoyi/vuepress-theme-vdoing" target="_blank" title="本站主题">Vdoing</a> 
    | Copyright © 2017-2023
    <span class="link">aiyoudiao 码二</span> <span>备案号：</span> <a href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank" title="备案号">鄂ICP备2022002654号-1</a></div> <div class="buttons"><div title="返回顶部" class="button blur go-to-top iconfont icon-fanhuidingbu" style="display:none;"></div> <div title="去评论" class="button blur go-to-comment iconfont icon-pinglun" style="display:none;"></div></div> <!----> <!----> <!----></div><div class="global-ui"><div></div><APlayer audio="" fixed="true" theme="#b7daff" loop="loop" order="list" preload="auto" volume="0.7" mutex="true" lrc-type="3" list-max-height="250" storage-name="vuepress-plugin-meting" id="aplayer-fixed"></APlayer><div id="VuepressPluginLive2d"></div></div></div>
    <script src="/assets/js/app.bd2fbc77.js" defer></script><script src="/assets/js/3.72c9c947.js" defer></script><script src="/assets/js/92.e2ebb8f5.js" defer></script><script src="/assets/js/42.4251ca36.js" defer></script>
  </body>
</html>
